{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## **演示0303：生成随机变量**"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### **案例1：均匀分布产生随机数：rand, random, randint**\n",
    "> **查看numpy中均匀分布产生的随机数分布情况**\n",
    " * *np.random.rand*、*np.random.random*均可用于生成0-1之间的随机浮点数\n",
    " * *np.randint*可生成指定区间内的随机整数\n",
    " * 在0-100中生成大量的随机整数，分别统计每个整数值的个数，可以发现，0-100之间的个数大体相当"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x2431c33fd68>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "%matplotlib inline\n",
    "import numpy as np\n",
    "import collections as col\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "total_count = 100000    # 一共产生10万个随机数\n",
    "section_count = 100    # 将10万个随机数分成100个区间分别统计数量\n",
    "min_value = 0\n",
    "max_value = 100\n",
    "\n",
    "data = np.random.randint(min_value, max_value, total_count) # 0~100之间的整数，随机生成100000个\n",
    "#data = (np.random.rand(total_count)*100).astype(int) # 随机生成0~1之间随机数100000个，放大100倍，再转成整数\n",
    "#data = (np.random.random(total_count)*100).astype(int) # 随机生成0~1之间随机数100000个，放大100倍，再转成整数\n",
    "counts = col.Counter(data)    # 分别统计0~100之间每个整数出现的次数\n",
    "\n",
    "x = np.arange(section_count)\n",
    "y = np.zeros(section_count)\n",
    "for i in x:\n",
    "    y[i] = counts[i]\n",
    "\n",
    "plt.plot(x, y)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### **案例2：标准正态分布随机数：randn**\n",
    "> **观察*randn*生成的随机数，其分布满足标准正态分布**"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x2431c33fe80>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "%matplotlib inline\n",
    "import numpy as np\n",
    "import collections as col\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "total_count = 100000\n",
    "section_count = 20\n",
    "section_max_value = 2.0 #仅统计-2.0~2.0之间的样本数\n",
    "section_min_value = -2.0\n",
    "section_interval = (section_max_value - section_min_value) / section_count\n",
    "\n",
    "data = np.random.randn(total_count)\n",
    "counts = np.array(section_count)\n",
    "x = np.arange(section_min_value, section_max_value, section_interval)\n",
    "y = np.zeros(len(x))\n",
    "\n",
    "# 按照-2.0~-1.9, -1.9~-1.8...... -0.1~0.0, 0.0~0.1, 0.1~0.2....1.9~2.0的区间计算data在各区间的数量\n",
    "for value in data:\n",
    "    if value > section_max_value or value < section_min_value:\n",
    "        continue\n",
    "    index = int((value - section_min_value) / section_interval) # 计算区间编号。只取计算结果的整数部分作为编号\n",
    "    y[index] += 1\n",
    "\n",
    "plt.xticks(np.arange(section_min_value, section_max_value, section_interval))\n",
    "bar_width = section_interval/2\n",
    "plt.bar(x+bar_width/2, y, bar_width)\n",
    "plt.xlabel(\"random data sctions\")\n",
    "plt.ylabel(\"random data counts\")\n",
    "plt.show()"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.8.2"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
